package com.lifeonwalden.game.mindustry.feature;

import com.badlogic.gdx.graphics.g2d.Batch;
import com.badlogic.gdx.graphics.g2d.TextureRegion;

/**
 * unit with texture
 */
public interface TextureUnit {
    /**
     * fetch texture
     *
     * @return texture
     */
    TextureRegion texture();

    /**
     * fetch x of coordinate
     *
     * @return x of coordinate
     */
    short x();

    /**
     * set the x of coordinate
     *
     * @param x of coordinate
     */
    void x(short x);


    /**
     * fetch y of coordinate
     *
     * @return y of coordinate
     */
    short y();


    /**
     * set the y of coordinate
     *
     * @param y of coordinate
     */
    void y(short y);

    void doJobBefore();

    void draw(Batch batch);

    void doJobAfter();
}
